1. Field
The present invention relates generally to the field of image capture systems and, more particularly, to image processing algorithms in image capture systems.
2. Description of the Related Art
In a typical image capture system, a solid-state image sensor, such as a charge-coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) sensor, is used to capture an image. To render the image suitable for viewing, it is necessary to perform or execute several image processing algorithms on the “raw” data gathered from the image sensor. These include, but are not limited to, automatic exposure (AE), automatic white balance (AWB), and tonemapping.
Maintaining the proper adjustment for these algorithms presents a special problem in image processing systems, such as those typically found in video cameras. It is desirable for the algorithms to respond quickly to changes in the scene. A common and conventional method to achieve this goal is to allow the algorithms to operate on each video frame and make adjustments on a frame-by-frame basis. This method presents a problem in that the algorithms typically make small, minute adjustments to every frame. These adjustments create “interframe noise” in the video sequence. Interframe noise reduces image quality as perceived by a human viewer. Interframe noise is also undesirable in applications with video compression because it tends to reduce the compression ratio.
An approach to reduce the interframe noise involves the utilization of a time delay between adjustments. For example, instead of making adjustments on every frame, the algorithm waits for a predetermined period of time or number of frames between adjustments. While this technique is an improvement over frame-by-frame adjustments because it reduces the amount of interframe noise (e.g., interframe noise is only introduced at adjustment intervals), there are still drawbacks to this technique. First, the algorithm is still making adjustments at regular intervals regardless of whether the adjustments are needed or necessary. The adjustments generally tend to be unnecessary, meaning that interframe noise is generated when it should not be. Second, the algorithm is incapable of responding to changes in the scenes or frames that occur between the adjustments.
Thus, there exists an undesirable tradeoff between how quickly the algorithm responds to changes and how frequently interframe noise gets introduced into the video signal. What is needed is an algorithm that is capable of making adjustments when there is a sufficient change in the scene to warrant an adjustment, thus, avoiding unnecessary adjustments and interframe noise.